#ifndef RP2COLORRGBA_H
#define RP2COLORRGBA_H


namespace Rp2
{

class ColorRGBA
{
public:
	ColorRGBA();
	ColorRGBA(float fR, float fG, float fB, float fA);
	~ColorRGBA();

	// member access
	operator float* ();
	operator const float* () const;

	float operator[] (int i) const;
	float& operator[] (int i);
	float R() const;
	float& R();
	float G() const;
	float& G();
	float B() const;
	float& B();
	float A() const;
	float& A();

    static const ColorRGBA BLACK;   // = (0,0,0,1) 
    static const ColorRGBA WHITE;   // = (1,1,1,1)
    static const ColorRGBA INVALID; // = (-1,-1,-1,-1)

private:
	float m_afTuple[4];

};

#include "Rp2ColorRGBA.inl"

}


#endif